
package com.dstz.form.vo;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSONObject;

/**
 * 封装好的sql结构
 * 
 * @author xianggang
 * 
 */
public class SqlConstructVO implements Serializable {
	
	private static final long serialVersionUID = 56787687683L;
	
	private String dsAlias;
	
	/*** 原始脚本*/
	private String pureSql;
	
	/*** 封装后的脚本*/
	private String sql;
	
	/**
	 * 表的查询条件 如 a.create_time>'2018'
	 */
	private String where;
	
	/**
	 * 视图的查询条件 如 createTime>'2018'
	 */
	private String viewWhere;
	
	/*** 排序*/
	private String orderBy;
	
	/*** 分组*/
	private String groupBy;
	
	// 备份数据库的ID
	private Long backupLogId;
	
	// 前端请求参数和后台默认参数map
	private Map<String, Object> paramsMap;
	
	// freemarker参数
	private JSONObject freemarkerParams;
	
	// 查询条件的JSONObject对象
	private List<SqlSearchVO> queryData;

	public String getDsAlias() {
		return dsAlias;
	}

	public void setDsAlias(String dsAlias) {
		this.dsAlias = dsAlias;
	}

	public String getPureSql() {
		return pureSql;
	}

	public void setPureSql(String pureSql) {
		this.pureSql = pureSql;
	}

	public String getSql() {
		return sql;
	}

	public void setSql(String sql) {
		this.sql = sql;
	}

	public String getWhere() {
		return where;
	}

	public void setWhere(String where) {
		this.where = where;
	}

	public String getViewWhere() {
		return viewWhere;
	}

	public void setViewWhere(String viewWhere) {
		this.viewWhere = viewWhere;
	}

	public String getOrderBy() {
		return orderBy;
	}

	public void setOrderBy(String orderBy) {
		this.orderBy = orderBy;
	}

	public String getGroupBy() {
		return groupBy;
	}

	public void setGroupBy(String groupBy) {
		this.groupBy = groupBy;
	}

	public Long getBackupLogId() {
		return backupLogId;
	}

	public void setBackupLogId(Long backupLogId) {
		this.backupLogId = backupLogId;
	}

	public Map<String, Object> getParamsMap() {
		return paramsMap;
	}

	public void setParamsMap(Map<String, Object> paramsMap) {
		this.paramsMap = paramsMap;
	}

	public JSONObject getFreemarkerParams() {
		return freemarkerParams;
	}

	public void setFreemarkerParams(JSONObject freemarkerParams) {
		this.freemarkerParams = freemarkerParams;
	}

	public List<SqlSearchVO> getQueryData() {
		return queryData;
	}

	public void setQueryData(List<SqlSearchVO> queryData) {
		this.queryData = queryData;
	}
	
}
